package com.xinghe.sharedevice.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xinghe.sharedevice.domain.Cabinet;

import java.util.List;
import java.util.Map;

/**
 * @author 星河一叶Ck
 * @date 2025/5/26
 */
public interface ICabinetService extends IService<Cabinet> {

    /**
     * 查询充电宝柜机列表
     * @param cabinet 柜机
     * @return List<Cabinet>
     */
    List<Cabinet> selectCabinetList(Cabinet cabinet);

    /**
     * 新增充电宝柜机
     * @param cabinet 充电宝柜机信息
     * @return int
     */
    int saveCabinet(Cabinet cabinet);

    /**
     * 更新充电宝柜机
     * @param cabinet 修改的信息
     * @return int
     */
    int updateCabinet(Cabinet cabinet);

    /**
     * 删除充电宝柜机
     * @param idList id集合
     * @return int
     */
    int removeCabinet(List<Long> idList);

    /**
     * 搜索未使用柜机
     * @param keyword 关键字
     * @return List<Cabinet>
     */
    List<Cabinet> searchNoUseList(String keyword);

    /**
     * 获取充电宝柜机全部详细信息
     * @param id 柜机id
     * @return 柜机全部详细信息
     */
    Map<String, Object> getAllInfo(Long id);
}
